1. Technical Field to which the Invention Pertains
The present invention relates to a blind signal separation technique, and more particularly to a blind signal separation system and method, a blind signal separation program and a recording medium thereof, in which a source signal is separated from a mixture signal into which the source signal with a time delay is mixed.
2. Description of the Related Art
In a blind signal separation problem, there is a blind deconvolution method especially as a method for separating a signal mixed with a time delay. Zhang et al. proposed a method for learning a linear filter to minimize the KL divergence (Kullback-Leibler divergence) to an output signal, which is used as a measure of statistical independence for an observed signal into which plural independent signals are mixed temporally and spatially, thereby making a multi-channel blind signal separation.
On the other hand, there is a method using a learning algorithm based on overcomplete representations in the case where the number of independent signals is more than the number of observed signals. Olshausen et al. proposed a sparse coding network for learning to minimize an evaluation function which is defined by a square error between an input signal and an estimated model and the sparseness of an output signal. Also, according to Lewicki et al., the blind signal separation is achieved by maximizing a posteriori probability of input data based on a maximum likelihood estimation.
A learning algorithm proposed by Lewicki et al. will now be outlined below. When a source signal s={s1, . . . , sn} that is an n-dimensional independent signal is mixed into an m-dimensional mixture signal x={x1, . . . , xm}, the source signal is formulated as follows.x=As  (formula 1)
In the formula 1, A is an m×n matrix (basis matrix). Considering each column of the basis matrix A as a basis function, each element of s is a coefficient (basis coefficient) of each basis function. Moreover, supposing that m≦n, the mixture signal x is represented as a linear sum of overcomplete basis. The purpose here is to estimate the optimal basis matrix A and the source signal s from only the information of the mixture signal x. The optimal basis matrix A estimated here is the mixture matrix for mixing the source signal s to produce the mixture signal x.
In the following, an estimation method for solving them will be described from the viewpoint of probability theory. First of all, estimation of the basis coefficients is made. Since the basis is overcomplete, s satisfying the formula 1 is not uniquely determined. Thus, the optimal s is acquired by maximizing the posteriori probability P(s|x,A) of s. This is achieved by solving a linear programming problem as follows.min cT|s|, subject to As=x  (formula 2)Where c=(1, . . . , 1), and the objective function of linear programming is cT|s|=Σk|sk|. This is equivalently achieved by maximizing a priori probability distribution P(s) under the condition As=x. It is assumed that P(s) is a Laplacian distribution with sparseness as follows.P(sk)∝ exp(−θ|sk|)Where θ is a parameter for deciding the variance.
A learning algorithm for finding the most adaptable basis to the data structure is derived below. Here, a logarithmic posteriori probability for certain data xlog P(x|A)=log∫P(s)P(x|A,s)ds  (formula 3)is regarded as a likelihood function, and the optimal basis is derived based on the maximum likelihood estimation that acquires A with the maximal likelihood. The maximum likelihood value A is searched by a gradient method by learning so that a derivative∂log P(x|A)/∂Ais zero.
However, the integration calculation of formula 3 to acquire P(x|A) is typically difficult, and its value can not be specifically obtained. Hence, an approximation expression that is obtained by expanding P(x|A) around ^s by a saddle point method is employed to obtain                               log          ⁢                                          ⁢                      P            ⁡                          (                              x                |                A                            )                                      ≈                                            const              .                              +                log                                      ⁢                                                  ⁢                          P              ⁡                              (                                                                           ⋀                                    ⁢                  s                                )                                              -                                    λ              2                        ⁢                                          (                                  x                  -                                                            A                      ⋀                                        ⁢                    s                                                  )                            2                                -                                    1              2                        ⁢            log            ⁢                                                  ⁢            det            ⁢                                                  ⁢            H                                              (                  formula          ⁢                                          ⁢          4                )            Here,λ=1/σ2,H=λATA−∇s∇s log P(^s)Where σ denotes a standard deviation of noise (x−As). ^s is a solution in the formula 2. A learning rule is obtained from a derivative of log P(x|A) by A. If it is supposed that∇=∂/∂Athe learning rule is given by the following expression (e.g., refer to “Learning overcomplete representations.” M. S. Lewicki and T. J. Sejnowski, Neural Computation, Vol. 12).                               Δ          ⁢                                          ⁢          A                =                              AA            T                    ⁢                      ∇            log                    ⁢                                          ⁢                      P            ⁡                          (                              x                |                A                            )                                                          (                  formula          ⁢                                          ⁢          5                )                                                          ⁢                  ≈                      -                          A              ⁡                              (                                                                            z                      ⋀                                        ⁢                                          s                      T                                                        +                  I                                )                                                                        (                  formula          ⁢                                          ⁢          6                )            Here,zk=∂ log P(^sk)/∂sk
Using the learning rule ΔA as obtained above, the basis matrix A is corrected by learning according to the following procedure. Correction with the learning rule ΔA is made for each element of the basis matrix A immediately before correction.    (1) When the mixture signal x is the input signal, s is obtained from the input signal x and the basis matrix A by the linear programming method of the formula 2.    (2) ΔA in the formula 6 is calculated using s obtained according to the procedure (1), and the basis matrix A is corrected by the following expression.Anew=Aold+ηΔA  (formula 7)Where Anew and Aold denote basis matrixes before and after correction, respectively, and η is a learning ratio.    (3) The above procedures (1) and (2) are repeated until the basis matrix A converges. A converged value of the basis matrix A is calculated as a mixture matrix. Also, a solution ^s in the formula 2 when the basis matrix A takes the converged value is an estimated source signal.
However, in the conventional techniques, because a linear filter is employed in the algorithm of the blind deconvolution method, there is a limitation that the independent signals can not be extracted beyond the number of mixture signals.
Also, in the signal separation algorithm based on overcomplete representations as proposed by Lewicki et al., there is a problem that it is difficult to deal with the signal (temporally and spatially mixed signal) into which the source signal is mixed with a time delay, although the independent signals can be obtained beyond the number of mixture signals. The reason for this is as follows.
For example, a sinusoidal time series signal is considered. In the sinusoidal wave, only if two basis functions (e.g., sin θ and cos θ) with different phases are prepared, the sinusoidal wave with arbitrary phase can be represented in a linear combination of them. This indicates that the sinusoidal wave with different phase lies on the two-dimensional plane, irrespective of the number of sampling points.
However, the typical signal waveform is rarely contained in such small dimensions. For example, considering a signal waveform such as a delta function, all spaces created by the sampling points are covered as the time passed, and it is impossible to represent the time lag by a linear combination of a small number of different bases. This always happens with the aperiodic waveform.
From the above discussion, it is required to prepare the bases corresponding to all the time lags to deal with the signal mixed temporally and spatially. That is, this requires a great number of bases given by the number of sampling points×number of kinds of bases. In this case, each basis for the same kind of signal waveform is simply the signal with time lag which should have similar figure.
When the signal separation algorithm using the overcomplete basis as proposed by Lewicki et al. is directly applied, it is still possible but very difficult to extract such a great number of bases by learning.